<template>
  <div>
    <button @click="handleLogin">登录</button>
    <div v-if="userInfo">用户名：{{ userInfo.name }}</div>
  </div>
</template>

<script setup>
import { ref } from 'vue';
import userApi from '@/api/modules/userApi'; // 导入用户 API 模块
import { useUserStore } from '@/stores/user'; // Pinia 存储 Token

const userStore = useUserStore();
const userInfo = ref(null);

// 登录操作
const handleLogin = async () => {
  try {
    // 调用登录接口（传参：用户名、密码）
    const token = await userApi.login({
      username: 'admin',
      password: '123456'
    });
    // 登录成功后，将 Token 存入 Pinia
    userStore.setToken(token);

    // 紧接着获取用户信息
    const info = await userApi.getUserInfo({ userId: 1 });
    userInfo.value = info;
  } catch (error) {
    // 错误处理（可选，拦截器已统一提示，这里可做额外逻辑）
    console.log('登录失败：', error);
  }
};
</script>